SYSTEM AND METHOD FOR USING IMAGES FROM A COMMODITY CAMERA FOR OBJECT SCANNING, REVERSE ENGINEERING, METROLOGY, ASSEMBLY, and ANALYSIS

ABSTRACT

A system and method for using images from a commodity camera for object scanning, reverse engineering, metrology, assembly, and analysis are disclosed. A particular embodiment includes a mobile imaging system to: enable a user to align an object to be analyzed on a turntable with a stencil; issue commands, by use of a data processor, to the turntable for automatic rotation of the turntable and the object thereon to a particular orientation for a camera of a mobile imaging device; capture a plurality of images of the object being analyzed at different automatic rotations of the turntable; upload the plurality of images of the object to a server via a network interface and a data network; and cause the server to generate a three dimensional (3D) model of the object from the plurality of images of the object.

PRIORITY PATENT APPLICATIONS

This patent application is a continuation patent application drawingpriority from U.S. non-provisional patent application Ser. No.17/128,141; filed Dec. 20, 2020; which is a continuation patentapplication drawing priority from U.S. non-provisional patentapplication Ser. No. 16/023,449; filed Jun. 29, 2018. This presentnon-provisional patent application draws priority from the referencedpatent applications. The entire disclosure of the referenced patentapplications is considered part of the disclosure of the presentapplication and is hereby incorporated by reference herein in itsentirety.

COPYRIGHT

A portion of the disclosure of this patent document contains materialthat is subject to copyright protection. The copyright owner has noobjection to the facsimile reproduction of the patent document or thepatent disclosure, as it appears in the Patent and Trademark Officepatent files or records, but otherwise reserves all copyright rightswhatsoever. The following notice applies to the disclosure as describedbelow and to the drawings that form a part of this document: Copyright2016-2022 Photogauge, Inc., All Rights Reserved.

TECHNICAL FIELD

This patent application relates to computer-implemented softwaresystems, mobile device imaging systems, and object metrology andanalysis systems, according to one embodiment, and more specifically toa system and method for using images from a commodity camera for objectscanning, reverse engineering, metrology, assembly, and analysis.

BACKGROUND

Measurement and analysis instruments using machine vision technology arewidely used in quality assurance for parts and assemblies of machines,medical devices, and semiconductor products, etc. Most commerciallyavailable machine vision systems for dimensional measurement aredesktop-sized or larger. In general, such systems lack mobility andflexibility given that a large percentage of dimensional measurementsare manually performed in workshops, office spaces, and at other sitesremote from convenient desktop-sized machine vision metrology systemaccess. However, conventional mobile imaging systems lack the precisionand resolution necessary to produce accurate measurements and defectdetection for objects with complex shapes.

SUMMARY

In various example embodiments described herein, a system and method forusing images from a commodity camera for object scanning, reverseengineering, metrology, assembly, and analysis are disclosed. In thevarious example embodiments described herein, a computer-implementeddevice including a software application (app) as part of a mobileimaging system is described to automate and improve object measurementand analysis processes. As described in more detail below, a computer orcomputing system on which the described embodiments can be implementedcan include personal computers (PCs), portable computing devices,laptops, tablet computers, personal digital assistants (PDAs), personalcommunication devices (e.g., cellular telephones, smartphones, or otherwireless devices), network computers, consumer electronic devices, orany other type of computing, data processing, communication, networking,or electronic system. An example embodiment can also use a non-specialtycamera, such as any commodity camera including a mobile phone camera, amobile phone attachment for image capture, a fixed-lens rangefindercamera, a digital single-lens reflex (DSLR) camera, an industrialmachine vision camera, a drone camera, a helmet camera, or the like. Thecommodity camera is used to acquire images of an object or many objects,from which the mobile imaging system can generate the three-dimensional(3D) geometry of the object, and provide any of a number of outputs asdescribed in more detail below.

The mobile imaging system of the various example embodiments describedherein provides a system to automatically image a part/object to beanalyzed or guide the user with the part/object to be analyzed and toautomatically take photos or images of the part/object. In one exampleembodiment, the mobile imaging system provides a stencil based guidancesystem to guide the user with a part/object to be analyzed and toautomatically take photos or images of the part/object after matching astencil with the part/object. In other embodiments, the mobile imagingsystem can acquire multiple images of the object or objects, some ofwhich may also contain one or more calibration bars. The object(s) maybe imaged in a special enclosure or in an environment with a backgroundof a specific color. Alternatively, the object(s) may be imaged in theirnatural environments. Irrespective of whether images are obtained usingthe same camera or multiple cameras, the images are processed in asimilar way. In one embodiment, images of the object or objects, whichmay or may not have special markers attached to them, can be captured indifferent poses using a single camera or multiple cameras by rotating ortranslating the object on a moving platform, such as a manual orautomatic turntable, a drone, a robot, a robotic-arm, or by manuallymoving the camera and capturing images from different camera locations.In the example embodiments, the mobile imaging system can analyze theimages of the object for focus, lighting, and contrast, and apply anobject bounding box around the object. The images can be uploaded to aserver in a network cloud. The server can generate a three dimensional(3D) model of the object from the images of the object. The server cangenerate measurements of the edges and surfaces or other metrologyresults of the object from the 3D model and/or the object images. Theserver can also generate information related to object point scans,object reverse engineering data, object assembly guidance, and objectanalysis. The metrology results and other output related to the objectas generated by the mobile imaging system of the various exampleembodiments can be provided to a user via a mobile device, email, webbrowser, or other presentation platform as described in more detailbelow.

BRIEF DESCRIPTION OF THE DRAWINGS

The various embodiments are illustrated by way of example, and not byway of limitation, in the figures of the accompanying drawings in which:

FIG. 1 illustrates an example embodiment of a networked system in whichvarious embodiments may operate;

FIGS. 2 through 4 illustrate example embodiments of the metrology andanalysis studio platform;

FIGS. 5 and 6 illustrate an example embodiment wherein a sample objectand a calibration bar are placed on a turntable, which is rotated todifferent positions as images are acquired;

FIG. 7 illustrates an example embodiment wherein a sample object isimaged in its natural location with a drone from above;

FIG. 8 illustrates an example embodiment of the metrology and analysisstudio platform wherein multiple cameras on tripods can image an object,in this case, the object has ArUco markers optionally placed on theobject;

FIG. 9 illustrates an example embodiment of the metrology and analysisstudio platform wherein multiple cameras on a customized rig can imagean object;

FIG. 10 illustrates an example embodiment of the metrology and analysisstudio platform wherein an object can be placed on an automatedturntable with a marker bar (seen in the smartphone screen) forautomatic image acquisition;

FIG. 11 illustrates an example embodiment wherein stencils can be usedto guide the user to properly align the object and calibration bar;

FIG. 12 illustrates an example embodiment wherein a plate with a grid ofthreaded holes and etched ArUco markers is provided for positioning andorientation of the part/object being imaged;

FIGS. 13 through 15 illustrate an example embodiment wherein a sampleobject can have a natural visual texture or a texture can be applied tothe object physically or via projection;

FIGS. 16 through 18 are processing flow diagrams that illustrateprocesses of the object metrology processing module of an exampleembodiment;

FIG. 19 is a processing flow diagram that illustrates the gauge creationfeatures of the object metrology processing module of an exampleembodiment;

FIG. 20 is a processing flow diagram that illustrates the part/objectmeasurement features of the object metrology processing module of anexample embodiment;

FIG. 21 is an operational process flow diagram that illustrates thepart/object measurement features of the object metrology processingmodule of an example embodiment;

FIG. 22 illustrates another example embodiment of a networked system inwhich various embodiments may operate;

FIG. 23 illustrates a processing flow diagram that illustrates exampleembodiments of methods as described herein; and

FIG. 24 shows a diagrammatic representation of a machine in the exampleform of a computer system within which a set of instructions whenexecuted may cause the machine to perform any one or more of themethodologies discussed herein.

DETAILED DESCRIPTION

In the following description, for purposes of explanation, numerousspecific details are set forth in order to provide a thoroughunderstanding of the various embodiments. It will be evident, however,to one of ordinary skill in the art that the various embodiments may bepracticed without these specific details.

In various example embodiments described herein, a system and method forusing images from a commodity camera for object scanning, reverseengineering, metrology, assembly, and analysis are disclosed. In thevarious example embodiments described herein, a computer-implementeddevice including a software application (app) as part of a mobileimaging system is described to automate and improve object measurementand analysis processes. As described in more detail below, a computer orcomputing system on which the described embodiments can be implementedcan include personal computers (PCs), portable computing devices,laptops, tablet computers, personal digital assistants (PDAs), personalcommunication devices (e.g., cellular telephones, smartphones, or otherwireless devices), network computers, consumer electronic devices, orany other type of computing, data processing, communication, networking,or electronic system. An example embodiment can also use a non-specialtycamera, such as any commodity camera including a mobile phone camera, amobile phone attachment for image capture, a fixed-lens rangefindercamera, a digital single-lens reflex (DSLR) camera, an industrialmachine vision camera, a drone camera, a helmet camera, or the like. Thecommodity camera is used to acquire images of an object or many objects,from which the mobile imaging system can generate the three-dimensional(3D) geometry of the object, and provide any of a number of outputs asdescribed in more detail below.

FIG. 1 , in an example embodiment, illustrates a system and method forusing images from a commodity camera for object scanning, reverseengineering, metrology, assembly, and analysis. In various exampleembodiments, an application or service, typically provided by oroperating on a host site (e.g., a website) 110, is provided to simplifyand facilitate the downloading or hosted use of the mobile imagingsystem 200 of an example embodiment. In a particular embodiment, themobile imaging system 200, or portions thereof, can be downloaded fromthe host site 110 by a user at a user platform 140. Alternatively, themobile imaging system 200 can be hosted by the host site 110 for anetworked user at a user platform 140. The details of the mobile imagingsystem 200 for an example embodiment are provided below.

Referring again to FIG. 1 , the mobile imaging system 200 can be innetwork communication with one or a plurality of metrology and analysisstudio platforms 120. The metrology and analysis studio platforms 120can include user platform computing and/or communication and imagingdevices, studio structures, lighting, and other resources with whichparts or objects to be measured or analyzed are located. In an exampleembodiment, the metrology and analysis studio platforms 120 can includestudio structures in which a part/object to be measured or analyzed isplaced and secured with a retention device. The studio structure enablesthe automated capture of images or photos of the part/object in aconsistent and systematic manner. FIGS. 2 through 4 illustrate exampleembodiments of the metrology and analysis studio platforms 120. In aparticular embodiment, the studio structure of the metrology andanalysis studio platforms 120 can include a turntable 122 that rotatesat intervals and degrees as controlled by the computing and/orcommunication and imaging device 124, such as a camera phone with aninstalled software application (app). As described in more detail below,the software application on the computing and/or communication andimaging device 124 can be the downloaded mobile imaging system 200, or aportion thereof. In an example embodiment, the metrology and analysisstudio platforms 120 can further include a set of computer-controllablelights that shine on the part/object being measured or analyzed. Themobile imaging system 200 can be configured to control the set of lightsof the studio platform 120 to automatically turn on/off each light andautomatically capture a photo or image of the part/object with thecomputing and/or communication and imaging device 124. In this manner, aset of images of the part/object from different angles and withdifferent lighting conditions can be generated. This set of images ofthe part/object being measured or analyzed can be processed by themobile imaging system 200 as described in more detail below.

In other example embodiments, the mobile imaging system provides asystem to automatically image a part/object to be analyzed or guide theuser with the part/object to be analyzed and to automatically takephotos or images of the part/object. In one example embodiment, themobile imaging system provides a stencil based guidance system to guidethe user with a part/object to be analyzed and to automatically takephotos or images of the part/object after matching a stencil with thepart/object. In other embodiments, the mobile imaging system can acquiremultiple images of the object or objects, some of which may also containone or more calibration bars. The object(s) may be imaged in a specialenclosure or in an environment with a background of a specific color(e.g., the metrology and analysis studio platform 120). Alternatively,the object(s) may be imaged in their natural environments at a siteother than a studio. Even in the natural environment, the mobile devicewith the camera (e.g., a drone with camera) can be in data communicationwith the network. Irrespective of whether images are obtained using thesame camera or multiple cameras, the images are processed in a similarway. In one embodiment, images of the object or objects, which may ormay not have special markers attached to them, can be captured indifferent poses using a single camera or multiple cameras by rotating ortranslating the object on a moving platform, such as a manual orautomatic turntable 122, a drone, a robot, a robotic-arm, or by manuallymoving the camera and capturing images from different camera locations.In the example embodiments, the mobile imaging system can analyze theimages of the object for focus, lighting, and contrast, and apply anobject bounding box around the object. The images can be uploaded to aserver 110 in a network cloud 115. The server 110, and the mobileimaging system 200 therein, can generate a three dimensional (3D) modelof the object from the images of the object. The server 110 can generatemeasurements of the edges and surfaces or other metrology results of theobject from the 3D model and/or the object images. The server 110 canalso generate information related to object point scans, object reverseengineering data, object assembly guidance, and object analysis. Themetrology results and other output related to the object as generated bythe mobile imaging system 200 of the various example embodiments can beprovided to a user via a mobile device, email, web browser, or otherpresentation platform as described in more detail below.

In various example embodiments, one or more of the metrology andanalysis studio platforms 120 can be provided by one or more third partyproviders operating at various locations in a network ecosystem. It willbe apparent to those of ordinary skill in the art that metrology andanalysis studio platforms 120 can include or be any of a variety ofnetworked third party service providers as described in more detailbelow. In a particular embodiment, a resource list maintained at thehost site 110 can be used as a summary or list of all metrology andanalysis studio platforms 120, which users or the host site 110 mayvisit/access and from which users or the host site 110 can obtainpart/object metrology or analysis information. The host site 110,metrology and analysis studio platforms 120, and user platforms 140 maycommunicate and transfer data and information in the data networkecosystem shown in FIG. 1 via a wide area data network (e.g., theInternet) 115. Various components of the host site 110 can alsocommunicate internally via a conventional intranet or local area network(LAN) 114.

Networks 115 and 114 are configured to couple one computing device withanother computing device. Networks 115 and 114 may be enabled to employany form of computer readable media for communicating information fromone electronic device to another. Network 115 can include the Internetin addition to LAN 114, wide area networks (WANs), direct connections,such as through a universal serial bus (USB) port, other forms ofcomputer-readable media, or any combination thereof. On aninterconnected set of LANs, including those based on differingarchitectures and protocols, a router and/or gateway device acts as alink between LANs, enabling messages to be sent between computingdevices. Also, communication links within LANs typically include twistedwire pair or coaxial cable, while communication links between networksmay utilize analog telephone lines, full or fractional dedicated digitallines including T1, T2, T3, and T4, Integrated Services Digital Networks(ISDNs), Digital Subscriber Lines (DSLs), wireless links includingsatellite links, or other communication links known to those of ordinaryskill in the art. Furthermore, remote computers and other relatedelectronic devices can be remotely connected to either LANs or WANs viaa wireless link, WiFi, Bluetooth™, satellite, or modem and temporarytelephone link.

Networks 115 and 114 may further include any of a variety of wirelesssub-networks that may further overlay stand-alone ad-hoc networks, andthe like, to provide an infrastructure-oriented connection. Suchsub-networks may include mesh networks, Wireless LAN (WLAN) networks,cellular networks, and the like. Networks 115 and 114 may also includean autonomous system of terminals, gateways, routers, and the likeconnected by wireless radio links or wireless transceivers. Theseconnectors may be configured to move freely and randomly and organizethemselves arbitrarily, such that the topology of networks 115 and 114may change rapidly and arbitrarily.

Networks 115 and 114 may further employ a plurality of accesstechnologies including 2nd (2G), 2.5, 3rd (3G), 4th (4G) generationradio access for cellular systems, WLAN, Wireless Router (WR) mesh, andthe like. Access technologies such as 2G, 3G, 4G, and future accessnetworks may enable wide area coverage for mobile devices, such as oneor more of client devices 141, with various degrees of mobility. Forexample, networks 115 and 114 may enable a radio connection through aradio network access such as Global System for Mobile communication(GSM), General Packet Radio Services (GPRS), Enhanced Data GSMEnvironment (EDGE), Wideband Code Division Multiple Access (WCDMA),CDMA2000, and the like. Networks 115 and 114 may also be constructed foruse with various other wired and wireless communication protocols,including TCP/IP, UDP, SIP, SMS, RTP, WAP, CDMA, TDMA, EDGE, UMTS, GPRS,GSM, UWB, WiFi, WiMax, IEEE 802.11x, and the like. In essence, networks115 and 114 may include virtually any wired and/or wirelesscommunication mechanisms by which information may travel between onecomputing device and another computing device, network, and the like. Inone embodiment, network 114 may represent a LAN that is configuredbehind a firewall (not shown), within a business data center, forexample.

The metrology and analysis studio platforms 120 and/or the userplatforms 140 may include any of a variety of providers or consumers ofnetwork transportable digital data. The network transportable digitaldata can be transported in any of a family of file formats, protocols,and associated mechanisms usable to enable a host site 110 and a userplatform 140 to send or receive images of parts/objects and relatedanalysis information over the network 115. In example embodiments, thefile format can be a Joint Photographic Experts Group (JPEG) file, aPortable Document Format (PDF), a Microsoft™ Word document or Excelspreadsheet format, a CSV (Comma Separated Values) format; however, thevarious embodiments are not so limited, and other file formats andtransport protocols may be used. For example, other data formats orformats other than open/standard formats can be supported by variousembodiments. Any electronic file format, such as Microsoft™ AccessDatabase Format (MDB), audio (e.g., Motion Picture Experts Group AudioLayer 3—MP3, and the like), video (e.g., MP4, and the like), and anyproprietary interchange format defined by specific sites can besupported by the various embodiments described herein. Moreover, ametrology and analysis studio platform 120 and/or user platform 140 mayprovide a variety of different data sets or computational modules.

In a particular embodiment, a user platform 140 with one or more clientdevices enables a user to generate data or access data provided by themobile imaging system 200 via the host 110 and network 115. Clientdevices of user platform 140 may include virtually any computing devicethat is configured to send and receive information over a network, suchas network 115. Such client devices may include portable devices 144,such as, cellular or satellite telephones, smartphones, imaging devices,radio frequency (RF) devices, infrared (IR) devices, global positioningdevices (GPS), Personal Digital Assistants (PDAs), handheld computers,wearable computers, tablet computers, integrated devices combining oneor more of the preceding devices, and the like. The client devices mayalso include other computing devices, such as personal computers 142,multiprocessor systems, microprocessor-based or programmable consumerelectronics, network PC's, and the like. The client devices may alsoinclude other processing devices, such as consumer electronic (CE)devices 146 and/or mobile computing devices 148, which are known tothose of ordinary skill in the art. As such, the client devices of userplatform 140 may range widely in terms of capabilities and features. Inmost cases, the client devices of user platform 140 will include animage capturing device, such as a camera. Moreover, the web-enabledclient device may include a browser application enabled to receive andto send wireless application protocol messages (WAP), and/or wiredapplication messages, and the like. In one embodiment, the browserapplication is enabled to employ HyperText Markup Language (HTML),Dynamic HTML, Handheld Device Markup Language (HDML), Wireless MarkupLanguage (WML), WMLScript, JavaScript™, EXtensible HTML (xHTML), CompactHTML (CHTML), and the like, to display and/or send digital information.In other embodiments, mobile devices can be configured with applications(apps) with which the functionality described herein can be implemented.

The client devices of user platform 140 may also include at least oneclient application that is configured to capture or receive image data,analysis data, and/or control data from another computing device via awired or wireless network transmission. The client application mayinclude a capability to provide and receive textual data, image data,graphical data, video data, audio data, and the like. Moreover, clientdevices of user platform 140 may be further configured to communicateand/or receive a message, such as through a Short Message Service (SMS),direct messaging (e.g., Twitter™), email, Multimedia Message Service(MMS), instant messaging (IM), internet relay chat (IRC), mIRC, Jabber,Enhanced Messaging Service (EMS), text messaging, Smart Messaging, Overthe Air (OTA) messaging, or the like, between another computing device,and the like.

Referring again to FIG. 1 , the mobile imaging system 200 of an exampleembodiment is shown to include a mobile imaging system database 112. Thedatabase 112 can be used to retain a variety of information data setsincluding, but not limited to, parts/object information, parts orobjects listing information, image data, parts/object analytics, controldata and the like. It will be apparent to those of ordinary skill in theart that the mobile imaging system database 112 can be locally residentat the host site 110, remotely located at other server locations, storedin network cloud storage, or stored in whole or in part on a clientdevice of user platform 140.

Referring again to FIG. 1 , host site 110 of an example embodiment isshown to include the mobile imaging system 200. In an exampleembodiment, mobile imaging system 200 can include an object metrologyprocessing module 210. Each of these modules can be implemented assoftware components executing within an executable environment of mobileimaging system 200 operating on host site 110 or user platform 140. Eachof these modules of an example embodiment is described in more detailbelow in connection with the figures provided herein.

Referring still to FIG. 1 , the mobile imaging system 200 can include anobject metrology processing module 210. The object metrology processingmodule 210 can be configured to perform the processing as describedherein. In a particular example embodiment, the object metrologyprocessing module 210 can be configured to provide a system toautomatically image a part/object to be analyzed or guide the user withthe part/object to be analyzed and to automatically take photos orimages of the part/object. In one example embodiment, the objectmetrology processing module 210 can provide a stencil based guidancesystem to guide the user with a part/object to be analyzed and toautomatically take photos or images of the part/object after matching astencil with the part/object. In other embodiments, the object metrologyprocessing module 210 can acquire multiple images of the object orobjects, some of which may also contain one or more calibration bars.The object(s) may be imaged in a special enclosure or in an environmentwith a background of a specific color (e.g., the metrology and analysisstudio platform 120). Alternatively, the object(s) may be imaged intheir natural environments at a site other than a studio. Even in thenatural environment, the mobile device with the camera can be in datacommunication with the network. Irrespective of whether images areobtained using the same camera or multiple cameras, the images areprocessed in a similar way. In one embodiment, images of the object orobjects, which may or may not have special markers attached to them, canbe captured in different poses using a single camera or multiple camerasby rotating or translating the object on a moving platform, such as amanual or automatic turntable, a drone, a robot, a robotic-arm, or bymanually moving the camera and capturing images from different cameralocations. In the example embodiments, the object metrology processingmodule 210 can analyze the images of the object for focus, lighting, andcontrast, and apply an object bounding box around the object. The imagescan be uploaded to a server in a network cloud and processed by theobject metrology processing module 210 hosted on the server.Alternatively, the object metrology processing module 210 can bedownloaded and executed locally on a mobile device of user platform 140.In either case, the object metrology processing module 210 can generatea three dimensional (3D) model of the object from the images of theobject. The object metrology processing module 210 can generatemeasurements of the edges and surfaces or other metrology results of theobject from the 3D model and/or the object images. The object metrologyprocessing module 210 can also generate information related to objectpoint scans, object reverse engineering data, object assembly guidance,and object analysis. The metrology results and other output related tothe object as generated by object metrology processing module 210 of thevarious example embodiments can be provided to a user via a mobiledevice, email, web browser, or other presentation platform of userplatform 140.

FIGS. 5 and 6 illustrate an example embodiment wherein a sample objectand a calibration bar are placed on a turntable, which can be rotated todifferent positions as images are acquired. FIG. 5 illustrates theobject to be imaged as placed on a spacer, which is positioned in or onthe turntable. The object can also be placed adjacent to a calibrationbar, which can include one or more calibration symbols or otherphotogrammetric markers (e.g., ArUco markers) to assist in the metrologyof the object. ArUco is a well-known OpenSource library for camera poseestimation using squared markers. ArUco markers are smalltwo-dimensional (2D) barcodes. Each ArUco marker corresponds to anumber, encoded into a small grid of black and white pixels. The ArUcodecoding algorithm is capable of locating, decoding, and of estimatingthe pose (location and orientation in space) of any ArUco markers in thecamera's field of view.

The image icons illustrated in FIG. 6 show different images of theobject on the rotating turntable as taken at different turntablepositions. All non-essential elements are colored in a distinctive color(e.g., red) so that they can be masked out and the object can beisolated during reconstruction or analysis. The set of images as shownin FIG. 6 can be used by the object metrology processing module 210 togenerate a three dimensional (3D) model of the object from the images ofthe object. The object metrology processing module 210 can also generatemeasurements of the edges and surfaces or other metrology results of theobject from the 3D model and/or the object images. The object metrologyprocessing module 210 can also generate information related to objectpoint scans, object reverse engineering data, object assembly guidance,and object analysis from the object images.

FIG. 7 illustrates an example embodiment wherein a sample object (e.g.,a pipe) is imaged in its natural location with a drone and camera fromabove. Alternatively, the object being analyzed can be imaged in itsnatural location with handheld cameras, mobile device cameras, roboticcameras, or other image capturing devices. In a similar manner asdescribed above, the set of images of the object, such as the set ofobject images shown in FIG. 7 , can be captured and used by the objectmetrology processing module 210 to generate a 3D model of the objectfrom the images of the object. The object metrology processing module210 can also generate measurements of the edges and surfaces or othermetrology results of the object from the 3D model and/or the objectimages. The object metrology processing module 210 can also generateinformation related to object point scans, object reverse engineeringdata, object assembly guidance, and object analysis from the objectimages.

FIG. 8 illustrates an example embodiment of the metrology and analysisstudio platform wherein multiple cameras on tripods or support rigs canimage an object. In the example shown, the object has ArUco markersoptionally placed on the object to assist in the metrology of theobject. The multiple cameras can be positioned on or adjacent to theplatform at various locations around the object. The images from themultiple cameras can be captured and wirelessly transferred to server110 or the user platform 140 on which the object metrology processingmodule 210 can be executed. In a similar manner as described above, theset of images obtained from the multiple cameras can be used by theobject metrology processing module 210 to generate a 3D model of theobject from the images of the object. The object metrology processingmodule 210 can also generate measurements of the edges and surfaces orother metrology results of the object from the 3D model and/or theobject images. The object metrology processing module 210 can alsogenerate information related to object point scans, object reverseengineering data, object assembly guidance, and object analysis from theobject images.

FIG. 9 illustrates an example embodiment of the metrology and analysisstudio platform wherein multiple cameras on a customized rig can be usedto image an object. The multiple cameras can be positioned on thecustomized rig at various locations around the object. The images fromthe multiple cameras can be captured and wirelessly transferred toserver 110 or the user platform 140 on which the object metrologyprocessing module 210 can be executed. In a similar manner as describedabove, the set of images obtained from the multiple cameras can be usedby the object metrology processing module 210 to generate a 3D model ofthe object from the images of the object. The object metrologyprocessing module 210 can also generate measurements of the edges andsurfaces or other metrology results of the object from the 3D modeland/or the object images. The object metrology processing module 210 canalso generate information related to object point scans, object reverseengineering data, object assembly guidance, and object analysis from theobject images.

Irrespective of how the images of the object are acquired, the acquiredimages can be uploaded to the server 110. Alternatively, the objectimages can be saved to a suitable device (e.g. a smartphone, desktop orlaptop computer, workstation, server, etc.) and later uploaded to theserver 110. In other embodiments, the object images may be processedlocally on a mobile device, desktop or laptop computer, workstation, orother device on a user platform 140. In a different embodiment, theentire process of acquiring images with automatic rotation of theturntable, uploading to a server or sending to a local computer,displaying progress and final results may be controlled through an appon a mobile device, such as a smartphone, tablet, or the like.

FIG. 10 illustrates an example embodiment of the metrology and analysisstudio platform wherein an object can be placed in or on an automatedturntable with a marker bar (seen in the smartphone screen) forautomatic image acquisition. In the example shown, an object ispositioned on an automatic turntable adjacent to a mobile device (e.g.,a smartphone) on which an instance of the object metrology processingmodule 210 can be executed as a mobile device app. The mobile device canbe positioned and retained using a mechanical fixture or rig. Theposition and angle of the mobile device relative to the object beingimaged can be precisely controlled with the mechanical fixture or rig.In the example embodiment shown, the mobile device app can send awireless command to the automatic turntable through a Bluetooth™ or WiFidata transmission. The wireless command can cause the automaticturntable to move in a precisely controlled manner and amount toposition the automatic turntable and the object thereon in a preciselocation or position. The mobile device app can then cause the camera ofthe mobile device to acquire an image of the object after the automaticturntable finishes a rotation or movement. The process can be repeatedfor multiple positions and images of the object. Once all angles of theobject are covered, the mobile device app can upload the automaticallyacquired images of the object to the server 110 for processing. In asimilar manner as described above, the set of images obtained from themobile device app can be used by the object metrology processing module210 to generate a 3D model of the object from the images of the object.The object metrology processing module 210 can also generatemeasurements of the edges and surfaces or other metrology results of theobject from the 3D model and/or the object images. The object metrologyprocessing module 210 can also generate information related to objectpoint scans, object reverse engineering data, object assembly guidance,and object analysis from the object images. Once the server 110completes the processing of the object images, the server 110 can sendthe processed data to the mobile device.

In the example embodiment shown in FIG. 10 , the mechanical fixture orrig can be augmented or replicated to install multiple imaging mobiledevices around the automatic turntable. The mobile device app may alsoperform checks on each image to ensure that various quality metrics(e.g. focus, speckle quality, etc.) are met and prompt the user tointervene if images are consistently poor. The mobile device app mayalso perform a preliminary (albeit low-quality) reconstruction of theobject images on the mobile device and display the results to the userin successive partial reconstructions as more and more images of theobject are acquired. Additionally, the mobile device app may assist theuser in placing and orienting the object(s) correctly with respect tothe camera(s) so that an accurate 3D reconstruction of the object can beobtained. An example of this assisted placement with part-based stencilsis shown in FIG. 11 and described below.

FIG. 11 illustrates an example embodiment wherein part-based stencils510 can be used to guide the user to properly align the object andcalibration bar relative to the camera(s) being used to image theobject. On the left portion of FIG. 11 , the part/object being imaged isdisplayed with a stencil 510 depicting an improper placement of theobject for imaging. In this sample case, the part/object is misalignedrelative to the stencil 510. Thus, the user is prompted to move theobject to align the stencil 510 with the object. On the right portion ofFIG. 11 , after being prompted the user has used the stencil 510 tocorrect (align) the position of the part/object being imaged and themarker bar relative to the stencil 510. In this manner, the exampleembodiment can provide assisted object placement with part-basedstencils.

FIG. 12 illustrates an example embodiment wherein a plate with a grid ofthreaded holes and etched ArUco markers is provided for positioning andorientation of the part/object being imaged. In the example embodimentusing the grid of tapped holes, the object can be placed in a pre-setposition and orientation with respect to the ArUco markers. Then, theposition and orientation of the ArUco markers with respect to the cameracan be computed by the object metrology processing module 210 executingas a mobile device app. Once the correct position and orientations ofthe ArUco markers are computed by the mobile device app, the mobiledevice app can determine the adjustments required for accurate 3D objectreconstruction. Thus, the object metrology processing module 210 cancompute the adjustments to the camera position and orientation (e.g.,pose) required for optimal alignment of the object for imaging. Theobject metrology processing module 210 executing as a mobile device appcan provide visual cues to the user to achieve this best pose of theobject to achieve accurate 3D object reconstruction. Once the correctalignment is achieved, the mobile device app can guide the user inacquiring and uploading the images of the object.

FIGS. 13 through 15 illustrate an example embodiment wherein a sampleobject can have a natural visual texture or a texture can be applied tothe object physically or via projection. In an example embodiment, theprocess relies on a visual texture on the surface of the parts orobjects for accurate 3D reconstruction. As shown in FIG. 13 , someobjects have a natural texture that can be exploited when the object isimaged. If such a natural texture is available on the object beingimaged, the images of the objects may be acquired without any surfacepreparation. If such natural texture is not available or not visible, aphysically applied texture, such as contrasting black and whitespeckles, may be applied through paints or other means as shown in FIG.14 . Alternatively, if such natural or physically applied texture is notavailable or not visible, a projection applied texture, such as textureimages projected onto the object with an image projection device, may beapplied to the object as shown in FIG. 15 . In any case, the texture ofthe object being imaged can be captured in the set of images obtainedfrom the mobile device app and used by the object metrology processingmodule 210 to generate a 3D model of the object from the images of theobject.

FIGS. 16 through 18 are processing flow diagrams that illustrateprocesses of the object metrology processing module 210 of an exampleembodiment. Using these processes, the part/object images uploaded tothe server 110 can be processed by the object metrology processingmodule 210 of an example embodiment to generate dimensionally accurate3D models of the imaged part/object. As shown in FIG. 16 , a workflow610 can be used to generate and establish calibration distances for oneor more calibration bars, which can be used in the imaging of objects.The calibration bar data can be stored in a database 112 accessible tothe server 110.

As shown in FIG. 16 , a workflow 620 can be used to obtaincomputer-aided design (CAD) models for parts or objects to be measuredor analyzed. The workflow 620 can also be used to obtain requiredmeasurements and a reporting structure for the user. Additionally, theworkflow 620 can also be used to create a macro for comparing the CADdata to a point cloud corresponding to the images obtained for an objector part being imaged. The CAD model and macro can be stored in adatabase 112 accessible to the server 110.

As shown in FIGS. 16 through 18 , a workflow 630 can be used to imageand measure or analyze a part or object as described above. Inparticular, the workflow 630 can be used to acquire images of thepart/object in a metrology and analysis studio platform or in the partor object's natural environment. In various example embodiments, theparts/objects can be imaged with or without a calibration bar. The setof object images can be uploaded to the server 110. The presence of thecalibration bars in the set of object images can be automaticallydetected or explicitly specified by a user. The calibration bar datacorresponding to the automatically detected or explicitly specifiedcalibration bars can be retrieved from the database 112. The calibrationbar data can be used to align the object images, calibrate the cameras,and construct and scale a 3D point cloud corresponding to thepart/object shown in the set of object images.

As shown in FIG. 17 , the workflow 630 continues after the 3D pointcloud corresponding to the part/object is generated. If the userspecifies the desire for 3D scanning, the 3D point cloud can be sent orprovided to the user. If the user specifies the desire for metrology ofthe imaged object, the CAD model and corresponding macro can be fetchedfrom the database 112. The CAD model and corresponding macro can be usedto generate metrology data corresponding to the imaged object. Themetrology data and the 3D point cloud of the object can be sent orprovided to the user. If the user specifies the desire for reverseengineering or object assembly data, a CAD model for the imagedpart/object can be generated from the 3D point cloud corresponding tothe part/object. Reverse engineering or object assembly data can begenerated from the CAD model and the 3D point cloud corresponding to thepart/object. The reverse engineering and/or object assembly data of theobject can be sent or provided to the user.

As shown in FIG. 18 , if the user specifies the desire for analysis datacorresponding to the imaged part/object, a CAD model of the imagedpart/object can be provided to a Finite-Element Analysis (FEA) system.The FEA system can build a finite-element (FE) model of the part/objectfrom the CAD model of the part/object. Related boundary conditions,loads, materials, etc. can be obtained from the user. The FEA system cangenerate analysis data corresponding to the imaged part/object from theFE model. The analysis data of the object can be sent or provided to theuser.

In each of the workflows as described herein, the processesautomatically remove all extraneous objects as well as the marker orcalibration bar and to produce a 3D model of only the imagedpart/object. The processes typically produce several million 3D pointsthat correspond to the point cloud of the imaged part/object. As aresult, the workflows as described herein can produce among thefollowing results:

-   -   (1) 3D Scanning: If point scans are the desired output, then the        3D point clouds corresponding to the part/object are returned to        the user by the server 110, either by email or weblink.    -   (2) Reverse Engineering: In another embodiment, the object image        scans can be further processed to produce a CAD model, which can        be used to generate object reverse engineering data. This object        reverse engineering data can be used by a user to manufacture        the part/object using modern manufacturing equipment, such as        Computer Numerical Control (CNC) machines or computer controlled        machine tools. This object reverse engineering data is        particularly useful for broken, obsolete, or competitor's parts        for which CAD models do not exist or are inaccessible.    -   (3) Metrology: In another embodiment, the object image scans can        be used to compare the scan with the CAD model of the part        provided by the user to understand the deviations of the actual        scanned unit from the CAD geometry, which represents the ideal        outcome. This metrology data can be used as an in-process        quality monitor or an end-of-line quality control tool. The        deviations of the analyzed or measured part from the CAD        geometry may be superimposed on the CAD model and displayed        using Augmented Reality (AR) or Virtual Reality (VR) tools to        the user.    -   (4) Assembly: In another embodiment, the object image scans can        be used to compare the CAD models of mating parts generated from        the point scans by the embodiments described herein and        understand if these parts can be assembled together.    -   (5) Analysis: In another embodiment, the object image scans can        be used to analyze the generated CAD models using numerical        tools, such as finite element analysis (FEA) to understand the        stresses and strains generated during assembly and field use.

Referring now to FIG. 19 , a processing flow diagram illustrates thegauge creation features of the object metrology processing module 210.In an example embodiment, the object metrology processing module 210 cangenerate a user interface via a client device of user platform 140 toprovide the client device user with an option to create a gauge as aninitial operation prior to enabling a user to conduct a part/objectmeasurement operation. In an example embodiment, the gauge creationfeature is used by a client device administrative user to createguidelines for users to instruct users on the processes for configuringthe object metrology processing module 210 to automatically capturephotos or images of a part/object being analyzed. In an exampleembodiment, the guidelines can include information and direction relatedto the use of stencils, the various camera modes, the focus parameters,and other configuration or operational information associated with theimage capture device, the studio, or other aspects of the imagecapturing process.

FIG. 20 is a processing flow diagram that illustrates the part/objectmeasurement features of the object metrology processing module 210 of anexample embodiment. In an example embodiment, the object metrologyprocessing module 210 can generate a user interface via a client deviceof user platform 140 to provide the client device user with an option toconduct a part/object measurement operation. As shown in FIG. 20 , theuser can be prompted to login and load a gauge created in the gaugecreation process described above. Next, the user can be prompted toalign a calibration bar with the part/object being analyzed. Acalibration bar can be provided with the metrology and analysis studioplatform 120 as described above. The alignment of the part/object caninclude aligning the part/object with a stencil. In an exampleembodiment, an ArUco marker or other photogrammetric markers can be usedto facilitate the alignment and assist the user to place the camera ofthe mobile imaging device 124 in the appropriate position. As well-knownto those of ordinary skill in the art, an ArUco marker is a syntheticsquare marker composed by a wide black border and an inner binarymatrix, which determines its identifier (id). The black borderfacilitates its fast detection in the image and the binary codificationallows its identification and the application of orientation andalignment techniques. The object metrology processing module 210 canperform an alignment check to verify that the part/object to be analyzedhas been properly aligned with the stencil.

In a manual mode of operation, the object metrology processing module210 can assist the user to manually take pictures of the part/objectonce the part/object is aligned with the stencil. The object metrologyprocessing module 210 can provide this user assistance via a userinterface and associated prompts on the mobile imaging device 124. In anautomated mode of operation, the object metrology processing module 210can generate and issue commands to the turntable 122 for rotation of theturntable 122 and the part/object thereon to a particular orientation orview for the camera of the mobile imaging device 124. After rotation ofthe turntable 122 is complete, the mobile imaging device 124 can receivea response signal back from the turntable 122 indicating the turntable122 has completed the rotation to the desired position. Then, the mobileimaging device 124 can automatically capture an image or a plurality ofimages of the part/object being analyzed at the particular rotation ofthe turntable 122 and exposing a particular orientation or view of thepart/object. As shown in FIG. 20 , the mobile imaging device 124 canautomatically take a photo or image of the part/object and then load astencil for the next image in a sequence of images of the part/objectbeing analyzed. The automatic image capture process of the objectmetrology processing module 210 can continue without user interventionuntil a previously specified number or quantity of images in thesequence of images of the part/object have been captured.

As shown in FIG. 21 , the operational process flow in an exampleembodiment can start with a user specifying a number or quantity ofimages of a particular part/object to be acquired to accomplish proper3D model reconstruction of the part/object. The object metrologyprocessing module 210 can also automatically adjust the lighting orprompt the user to adjust the lighting in the metrology and analysisstudio platform 120 to properly illuminate the part/object for imagecapture. In an automated mode of operation, the object metrologyprocessing module 210 can automatically adjust the lighting in themetrology and analysis studio platform 120 to properly illuminate thepart/object for each image capture. As described above, the objectmetrology processing module 210 can also generate and issue commands tothe turntable 122 for rotation of the turntable 122 and the part/objectthereon to a particular orientation or view for the camera of the mobileimaging device 124. As also described above, the mobile imaging device124 can automatically capture a sequence of photos or images of thepart/object, automatically loading a new stencil and rotating theturntable 122 for each image capture. The automatic image captureprocess of the object metrology processing module 210 can continuewithout user intervention until the previously specified number orquantity of images in the sequence of images of the part/object havebeen captured. Once the complete sequence of photos or images of thepart/object have been captured, the object metrology processing module210 can upload the image sequence to the server 110 for processing andanalysis. The object metrology processing module 210 can perform animage quality check prior to uploading the images to make sure only goodquality images are uploaded to server 110. The image quality check caninclude validation of the images in the image sequence for focus,overexposure, underexposure, speckling, and the like. The server 110 canuse the uploaded image sequence to generate a 3D model of the objectfrom the images of the object.

The server 110 can generate measurements of the edges and surfaces orother metrology results of the part/object from the 3D model and/or theimage sequence. The server 110 can also generate information showing anydeviation between actual part/object dimensions and corresponding 3Dmodel dimensions. The server 110 can also generate informationindicative of the status of the measurement result, such as pass/failresults. In an example embodiment, the user can receive detailedinformation related to the metrology results in the form of tables,images, or the like. The metrology results, deviation information, andother output related to the metrology of the part/object as generated bythe mobile imaging system 200 of the various example embodiments can beprovided to the user via the mobile imaging device 124, another mobiledevice, email, web browser, or other presentation platform.

Referring now to FIG. 22 , another example embodiment 101 of a networkedsystem in which various embodiments may operate is illustrated. In theembodiment illustrated, the host site 110 is shown to include the mobileimaging system 200. The mobile imaging system 200 is shown to includethe object metrology processing module 210 as described above. In aparticular embodiment, the host site 110 may also include a web server904, having a web interface with which users may interact with the hostsite 110 via a user interface or web interface. The host site 110 mayalso include an application programming interface (API) 902 with whichthe host site 110 may interact with other network entities on aprogrammatic or automated data transfer level. The API 902 and webinterface 904 may be configured to interact with the mobile imagingsystem 200 either directly or via an interface 906. The mobile imagingsystem 200 may be configured to access a data storage device 112 eitherdirectly or via the interface 906.

Thus, as described for various example embodiments, a system and methodfor using images from a commodity camera for object scanning, reverseengineering, metrology, assembly, and analysis are disclosed. In thevarious example embodiments described herein, a computer-implementeddevice including a software application (app) as part of a mobileimaging system is described to automate and improve object measurementand analysis processes. The various embodiments described herein can beexpanded in a variety of ways to provide additional features andservices. Some of these expanded features and services are provided tocreate and manage a secure infrastructure in a cloud environment toprovide computational resources and technology services for generating3D models of parts/objects being measured or analyzed and distributingmeasurement or analysis reports across platforms. Various exampleembodiments can also provide the following features and services:

-   -   API services across platforms for interaction with user content        and data access    -   Data storage services using industrial grade services    -   Continuous integration and deployment of all services over cloud        infrastructure    -   Communication of all components and resources using        authentication and authorization over secure channel.    -   Periodic, logical backups for disaster recovery    -   Horizontal scaling of complete infrastructure    -   Version control system for application code management    -   24/7 availability of infrastructure    -   Data persistence services in RDBMS

The various embodiments described herein can provide a variety ofbenefits. For example, the various embodiments can provide among thefollowing benefits and capabilities:

-   -   Using a smartphone for computer aided design (CAD)-to-geometry        comparison    -   One-touch scaled 3D geometry measurement using a smartphone    -   Real-time image quality/fitness assessment for reconstruction    -   Stencil-based user guidance system    -   First sub-mm-accurate 3D reconstruction pipeline    -   First smartphone-based reverse engineering pipeline        (images-to-CAD model generation)    -   Parallelizable workflow with minimal hardware change    -   Automatic camera position system for perfect reconstruction        (e.g., using ArUco)    -   Visualization of results using augmented reality (AR) on the        phone    -   Drone-based CAD-to-geometry comparison pipeline    -   Fully autonomous CAD-to-geometry pipeline    -   Base with photogrammetric markers (e.g. ArUco), laser        speckles/structured light projector, turntable, X-Y-theta stage,        smartphone, custom lighting

Referring now to FIG. 23 , a processing flow diagram illustrates anexample embodiment of a method implemented by the mobile imaging system200 as described herein. The method 2000 of an example embodiment can beconfigured to: enable a user to align an object to be analyzed on aturntable with a stencil (processing block 2010); issue commands, by useof a data processor, to the turntable for automatic rotation of theturntable and the object thereon to a particular orientation for acamera of a mobile imaging device (processing block 2020); capture aplurality of images of the object being analyzed at different automaticrotations of the turntable (processing block 2030); upload the pluralityof images of the object to a server via a network interface and a datanetwork (processing block 2040); and cause the server to generate athree dimensional (3D) model of the object from the plurality of imagesof the object (processing block 2050).

FIG. 24 shows a diagrammatic representation of a machine in the exampleform of a mobile computing and/or communication system 700 within whicha set of instructions when executed and/or processing logic whenactivated may cause the machine to perform any one or more of themethodologies described and/or claimed herein. In alternativeembodiments, the machine operates as a standalone device or may beconnected (e.g., networked) to other machines. In a networkeddeployment, the machine may operate in the capacity of a server or aclient machine in server-client network environment, or as a peermachine in a peer-to-peer (or distributed) network environment. Themachine may be a personal computer (PC), a laptop computer, a tabletcomputing system, a Personal Digital Assistant (PDA), a cellulartelephone, a smartphone, a web appliance, a set-top box (STB), a networkrouter, switch or bridge, or any machine capable of executing a set ofinstructions (sequential or otherwise) or activating processing logicthat specify actions to be taken by that machine. Further, while only asingle machine is illustrated, the term “machine” can also be taken toinclude any collection of machines that individually or jointly executea set (or multiple sets) of instructions or processing logic to performany one or more of the methodologies described and/or claimed herein.

The example mobile computing and/or communication system 700 includes adata processor 702 (e.g., a System-on-a-Chip (SoC), general processingcore, graphics core, and optionally other processing logic) and a memory704, which can communicate with each other via a bus or other datatransfer system 706. The mobile computing and/or communication system700 may further include various input/output (I/O) devices and/orinterfaces 710, such as a touchscreen display, an audio jack, andoptionally a network interface 712. In an example embodiment, thenetwork interface 712 can include one or more radio transceiversconfigured for compatibility with any one or more standard wirelessand/or cellular protocols or access technologies (e.g., 2nd (2G), 2.5,3rd (3G), 4th (4G) generation, and future generation radio access forcellular systems, Global System for Mobile communication (GSM), GeneralPacket Radio Services (GPRS), Enhanced Data GSM Environment (EDGE),Wideband Code Division Multiple Access (WCDMA), LTE, CDMA2000, WLAN,Wireless Router (WR) mesh, and the like). Network interface 712 may alsobe configured for use with various other wired and/or wirelesscommunication protocols, including TCP/IP, UDP, SIP, SMS, RTP, WAP,CDMA, TDMA, UMTS, UWB, WiFi, WiMax, Bluetooth™, IEEE 802.11x, and thelike. In essence, network interface 712 may include or support virtuallyany wired and/or wireless communication mechanisms by which informationmay travel between the mobile computing and/or communication system 700and another computing or communication system via network 714.

The memory 704 can represent a machine-readable medium on which isstored one or more sets of instructions, software, firmware, or otherprocessing logic (e.g., logic 708) embodying any one or more of themethodologies or functions described and/or claimed herein. The logic708, or a portion thereof, may also reside, completely or at leastpartially within the processor 702 during execution thereof by themobile computing and/or communication system 700. As such, the memory704 and the processor 702 may also constitute machine-readable media.The logic 708, or a portion thereof, may also be configured asprocessing logic or logic, at least a portion of which is partiallyimplemented in hardware. The logic 708, or a portion thereof, mayfurther be transmitted or received over a network 714 via the networkinterface 712. While the machine-readable medium of an exampleembodiment can be a single medium, the term “machine-readable medium”should be taken to include a single non-transitory medium or multiplenon-transitory media (e.g., a centralized or distributed database,and/or associated caches and computing systems) that stores the one ormore sets of instructions. The term “machine-readable medium” can alsobe taken to include any non-transitory medium that is capable ofstoring, encoding or carrying a set of instructions for execution by themachine and that cause the machine to perform any one or more of themethodologies of the various embodiments, or that is capable of storing,encoding or carrying data structures utilized by or associated with sucha set of instructions. The term “machine-readable medium” canaccordingly be taken to include, but not be limited to, solid-statememories, optical media, and magnetic media.

As described herein for various example embodiments, a system and methodfor using images from a commodity camera for object scanning, reverseengineering, metrology, assembly, and analysis are disclosed. In variousembodiments, a software application program is used to enable thecapture and processing of images on a computing or communication system,including mobile devices. As described above, in a variety of contexts,the mobile imaging system 200 of an example embodiment can be configuredto automatically capture images of a part/object being measured oranalyzed, all from the convenience of a portable electronic device, suchas a smartphone. This collection images can be processed and results canbe distributed to a variety of network users. As such, the variousembodiments as described herein are necessarily rooted in computer andnetwork technology and serve to improve these technologies when appliedin the manner as presently claimed. In particular, the variousembodiments described herein improve the use of mobile device technologyand data network technology in the context of automated objectmeasurement and analysis via electronic means.

The Abstract of the Disclosure is provided to allow the reader toquickly ascertain the nature of the technical disclosure. It issubmitted with the understanding that it will not be used to interpretor limit the scope or meaning of the claims. In addition, in theforegoing Detailed Description, it can be seen that various features aregrouped together in a single embodiment for the purpose of streamliningthe disclosure. This method of disclosure is not to be interpreted asreflecting an intention that the claimed embodiments require morefeatures than are expressly recited in each claim. Rather, as thefollowing claims reflect, inventive subject matter lies in less than allfeatures of a single disclosed embodiment. Thus, the following claimsare hereby incorporated into the Detailed Description, with each claimstanding on its own as a separate embodiment.

What is claimed is:
 1. A system comprising: a mobile imaging devicehaving a data processor and a camera; a network interface, in datacommunication with the data processor, for communication on a datanetwork; and a mobile imaging system, executable by the data processor,to: use the camera of the mobile imaging device to capture a pluralityof images of external surfaces of an object being analyzed at differentorientations adjacent to a calibration bar; upload the plurality ofimages of the object to a server via the network interface and the datanetwork; cause the server to generate a computer-aided design (CAD)model of the object from the plurality of images of the object; causethe server to generate metrology information from the plurality ofimages, the metrology information further including measurements ofedges and surfaces of the object, object point scan data, and objectreverse engineering data generated from the object point scan data andthe CAD model of the object; and cause the server to provide the CADmodel of the object and the metrology information to a user of a userplatform via the data network.
 2. The system of claim 1 wherein theplurality of images are extracted from a video.
 3. The system of claim 1wherein the metrology information further including information showingany deviation between scanned object dimensions and corresponding CADmodel dimensions.
 4. The system of claim 1 wherein the metrologyinformation further including object assembly guidance and objectanalysis information.
 5. The system of claim 1 wherein the mobileimaging device is a device of a type from the group consisting of: apersonal computer (PC), a portable computing device, a mobile device, alaptop computer, a tablet computer, a personal digital assistant (PDA),a personal communication device, a cellular telephone, a smartphone, awireless device, a network computer, and a consumer electronic device.6. The system of claim 1 being further configured to analyze theplurality of images of the object for focus, lighting, and contrast. 7.The system of claim 1 being further configured to use an ArUco marker orother photogrammetric markers to facilitate alignment of the object. 8.The system of claim 1 being further configured to automatically adjustlighting in a metrology and analysis studio platform to properlyilluminate the object for each image capture.
 9. The system of claim 1being further configured to capture the plurality of images of theobject being analyzed at different automatic rotations of a turntablewithout user intervention.
 10. The system of claim 1 being furtherconfigured to capture the plurality of images of the object beinganalyzed with a commodity camera.
 11. The system of claim 1 beingfurther configured to capture the plurality of images of the objectbeing analyzed with a drone camera.
 12. The system of claim 1 beingfurther configured to capture the plurality of images of the objectbeing analyzed with a robotic-arm based camera.
 13. The system of claim1 being further configured to use a colored screen to aid in isolatingthe object of interest from a cluttered background.
 14. The system ofclaim 1 being further configured to provide real-time image quality orfitness assessments for object reconstruction.
 15. The system of claim 1being further configured to superimpose an image of a stencil on animage of an object for object alignment.
 16. The system of claim 1 beingfurther configured to superimpose an image of a stencil on an image ofan object in an augmented reality or virtual reality environment forobject alignment.
 17. A method comprising: using a camera of a mobileimaging device to capture a plurality of images of external surfaces ofan object being analyzed at different orientations adjacent to acalibration bar; uploading the plurality of images of the object to aserver via a network interface and a data network; causing the server togenerate a computer-aided design (CAD) model of the object from theplurality of images of the object; causing the server to generatemetrology information from the plurality of images, the metrologyinformation further including measurements of edges and surfaces of theobject, object point scan data, and object reverse engineering datagenerated from the object point scan data and the CAD model of theobject; and causing the server to provide the CAD model of the objectand the metrology information to a user of a user platform via the datanetwork.
 18. The method of claim 17 wherein the plurality of images areextracted from a video.
 19. The method of claim 17 wherein the mobileimaging device is a device of a type from the group consisting of: apersonal computer (PC), a portable computing device, a mobile device, alaptop computer, a tablet computer, a personal digital assistant (PDA),a personal communication device, a cellular telephone, a smartphone, awireless device, a network computer, and a consumer electronic device.20. The method of claim 17 including providing real-time image qualityor fitness assessments for object reconstruction.